package io.github.bigbird0101.datatransfer.constants;

public interface Constant {
    /**
     * 读写插件名称
     */
    public static final String READER_PLUGIN_MYSQL = "mysqlreader";

    public static final String READER_PLUGIN_POSTGRESQL = "postgresqlreader";

    public static final String READER_PLUGIN_ORACLE = "oraclereader";

    public static final String READER_PLUGIN_SQLSERVER = "sqlserverreader";

    public static final String READER_PLUGIN_CLICKHOUSE = "clickhousereader";

    public static final String READER_PLUGIN_RDBMS = "rdbmsreader";

    public static final String READER_PLUGIN_KAFKA = "kafkareader";

    public static final String READER_PLUGIN_MQ = "mqreader";

    public static final String READER_PLUGIN_API = "apireader";

    public static final String READER_PLUGIN_STREAM = "streamreader";


    public static final String WRITER_PLUGIN_MYSQL = "mysqlwriter";

    public static final String WRITER_PLUGIN_POSTGRESQL = "postgresqlwriter";

    public static final String WRITER_PLUGIN_ORACLE = "oraclewriter";

    public static final String WRITER_PLUGIN_SQLSERVER = "sqlserverwriter";

    public static final String WRITER_PLUGIN_CLICKHOUSE = "clickhousewriter";

    public static final String WRITER_PLUGIN_KINGBASEES = "kingbaseeswriter";

    public static final String WRITER_PLUGIN_RDBMS = "rdbmswriter";

    public static final String WRITER_PLUGIN_MONGODB = "mongodbwriter";

    public static final String WRITER_PLUGIN_KAFKA = "kafkawriter";

    public static final String WRITER_PLUGIN_ELASTICSEARC = "elasticsearchwriter";

    public static final String WRITER_PLUGIN_CASSANDRA = "cassandrawriter";

    public static final String WRITER_PLUGIN_STREAM = "streamwriter";

    /**
     * 数据源类型
     */
    public static final String DATASOURCE_KAFKA = "KAFKA";
    public static final String DATASOURCE_RABBIT = "RABBITMQ";
    public static final String DATASOURCE_ACTIVE = "ACTIVEMQ";
    public static final String DATASOURCE_ROCKET = "ROCKETMQ";
    public static final String DATASOURCE_HTTP = "HTTP";
    public static final String DATASOURCE_HTTPS = "HTTPS";
    public static final String DATASOURCE_HTTP_SERVER = "HTTPSERVER";
    public static final String DATASOURCE_WEBSOCKET = "WEBSOCKET";
    //    public static final String DATASOURCE_API = "API";
    public static final String DATASOURCE_MYSQL = "MYSQL";
    public static final String DATASOURCE_TIDB = "TIDB";
    public static final String DATASOURCE_STARROCKS = "STARROCKS";
    public static final String DATASOURCE_APACHEDORIS = "APACHEDORIS";
    public static final String DATASOURCE_POSTGRESQL = "POSTGRESQL";
    public static final String DATASOURCE_OPENGAUSS = "OPENGAUSS";
    public static final String DATASOURCE_GAUSSDB = "GAUSSDB";
    public static final String DATASOURCE_ORACLE = "ORACLE";
    public static final String DATASOURCE_SQLSERVER = "SQLSERVER";
    public static final String DATASOURCE_CLICKHOUSE = "CLICKHOUSE";
    public static final String DATASOURCE_DAMENG = "DAMENG";
    public static final String DATASOURCE_ELASTICSEARCH = "ELASTICSEARCH";


    /**
     * 解析类型
     */
    String PARSE_TYPE_JSON = "json";
    String PARSE_TYPE_SPLIT = "split";
    /**
     * 默认分隔符
     */
    String DEFAULT_SPLIT = ",";

    /**
     * 读支持的数据类型
     */
    String DATA_TYPE_BOOL = "bool";
    String DATA_TYPE_STRING = "string";
    String DATA_TYPE_INT = "int";
    String DATA_TYPE_BYTE = "byte";
    String DATA_TYPE_FLOAT = "float";
    String DATA_TYPE_DATE = "date";
    String DATA_TYPE_LIST_INT = "list_int";
    String DATA_TYPE_LIST_STRING = "list_string";
    String DATA_TYPE_LIST_FLOAT = "list_float";
    String DATA_TYPE_LIST_BOOL = "list_bool";
    String DATA_TYPE_LIST_ANY = "list_any";

    /**
     * 任务启动停止命令
     */
    String TASK_START = "start";
    String TASK_STOP = "stop";

    String HTTP_TASK_METHOD_NAME = "startReader";

    String CONTEXT_PATH = "/data";
    String HTTP_TASK_URL_PREFIX = "/open";
    String HTTP_TASK_METHOD_TYPE = "POST";

    String WEBSOCKET_TASK_PREFIX = "/open";


    // 默认时间格式
    String DEFAULT_DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";

    String HTTP_PREFIX = "http://";

    String SHUTDOWN = "shutdown";
}
